home *** CD-ROM | disk | FTP | other *** search
- //$Id: XLITEAPI.H 1.28 1995/11/05 07:58:49 psq-pc Exp $
-
- #ifndef __XLITEAPI__
- #define __XLITEAPI__
-
- #ifndef __XAPI__
- #include "XAPI.h"
- #endif
-
- #ifndef __XRTYPES__
- #include "XRTypes.h"
- #endif
-
- #if defined(qPointersD0) && defined(__MWERKS__) && defined(qPowerPC)
- #pragma pointers_in_D0
- #endif
-
- struct TLightTraceElement;
- struct FACET3D;
- struct VERTEX3D;
-
- typedef void (RDXAPITYPE *XLightForEachShadowBufferCallback)(BOOLEAN lightType, TRANSFORM* transform, FIXED halfAngle, void* priv);
-
- // Lights
- typedef BOOLEAN (RDXAPITYPE *XLightGetColorProc)(ExternalInstance *data,const VECTOR3 &QQ,const VECTOR3 &DD,const FIXED &dist,COLOR &acolor, BOOLEAN &callForShadowEffect);
- typedef void (RDXAPITYPE *XLightSetTransformProc)(ExternalInstance *data,const TRANSFORM& transform);
- typedef BOOLEAN (RDXAPITYPE *XLightGetDirectionProc)(ExternalInstance *data, const VECTOR3 &QQ, VECTOR3 &DD, FIXED &dist);
- typedef BOOLEAN (RDXAPITYPE *XLightIsVisibleInPersProc)(ExternalInstance *data);
- typedef void (RDXAPITYPE *XLightShadowEffectProc)(ExternalInstance *data,const FIXED &distThru,const FIXED &distTotal,COLOR &acolor);
- typedef TLightTraceElement* (RDXAPITYPE *XLightGetNewTraceProc)(ExternalInstance *data,short &nb);
- typedef long (RDXAPITYPE *XLightGetPrimitiveIDProc)(ExternalInstance *data);
- typedef void (RDXAPITYPE *XLightForEachShadowBufferProc)(ExternalInstance *data, XLightForEachShadowBufferCallback proc, void* priv);
-
- // Light Gels
- typedef BOOLEAN (RDXAPITYPE *XGelGetValueProc)(ExternalInstance *data,const VECTOR2 &uv,COLOR &value);
-
- // Backgrounds
- typedef void (RDXAPITYPE *XBgGetUVColorProc)(ExternalInstance *data, const VECTOR2 &uv, const BOX2D &uvMinMax, COLOR &acolor);
- typedef void (RDXAPITYPE *XBgGetDirectionColorProc)(ExternalInstance *data,const VECTOR3 &DD, COLOR &acolor);
- typedef BOOLEAN (RDXAPITYPE *XBgIsUVProc)(ExternalInstance *data);
-
- // Atmosphere
- typedef BOOLEAN (RDXAPITYPE *XAtmosphericLocalProc)(ExternalInstance *data,const VECTOR3 &AA,const VECTOR3 &BB,COLOR &filter);
- typedef BOOLEAN (RDXAPITYPE *XAtmosphericGlobalProc)(ExternalInstance *data,const VECTOR3 &PP,const VECTOR3 &DD,COLOR &filter);
-
- // Ambient Light
- typedef BOOLEAN (RDXAPITYPE *XAmbientLightGetColorProc)(ExternalInstance *data, COLOR& color);
- typedef BOOLEAN (RDXAPITYPE *XAmbientLightGetBrightnessProc)(ExternalInstance *data, FIXED& brightness);
-
- // Camera
- typedef BOOLEAN (RDXAPITYPE *XCameraSetTransformProc)(ExternalInstance *data,const TRANSFORM &atransform);
- typedef BOOLEAN (RDXAPITYPE *XCameraUVToRayProc)(ExternalInstance *data,const VECTOR2 &uv,VECTOR3 &OO,VECTOR3 &DD);
- typedef BOOLEAN (RDXAPITYPE *XCameraXYZToUVProc)(ExternalInstance *data,const VECTOR3 &PP,VECTOR2 &uv,FIXED &zz);
- typedef long (RDXAPITYPE *XCameraGetPrimitiveIDProc)(ExternalInstance *data);
- typedef long (RDXAPITYPE *XCameraClip3DProc)(ExternalInstance *data, FACET3D* RDDLocalFace, VERTEX3D* RDDLocalVertice,
- FACET3D* RDDCameraFace, VERTEX3D* RDDCameraVertice,
- FIXED *ClipBox);
- typedef BOOLEAN (RDXAPITYPE *XCameraClipLine3DProc)(ExternalInstance *data, VECTOR3& P1, VECTOR3& P2);
-
- // Post render Effects
- typedef BOOLEAN (RDXAPITYPE *XPostRenderFilterFilterProc)(ExternalInstance *data, void* theScene,void* image,void* buffers);
- typedef BOOLEAN (RDXAPITYPE *XPostRenderFilterGetNeedsProc)(ExternalInstance *data, void* needs);
-
-
- #if defined(qPointersD0) && defined(__MWERKS__) && defined(qPowerPC)
- #pragma pointers_in_A0
- #endif
-
- #endif
-
-